[INFO] cloning repository https://github.com/Digital-Threads/Task-Journal
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/Digital-Threads/Task-Journal" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FDigital-Threads%2FTask-Journal", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FDigital-Threads%2FTask-Journal'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] fa5226be5f5b6e31ebf5037b950b2e32a1e08615
[INFO] testing Digital-Threads/Task-Journal against master#cced03bfd61a304243a34504618ecec86c17063f for pr-154065-2
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FDigital-Threads%2FTask-Journal" "/workspace/builds/worker-3-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-3-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/Digital-Threads/Task-Journal
[INFO] finished tweaking git repo https://github.com/Digital-Threads/Task-Journal
[INFO] tweaked toml for git repo https://github.com/Digital-Threads/Task-Journal written to /workspace/builds/worker-3-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/Digital-Threads/Task-Journal on toolchain cced03bfd61a304243a34504618ecec86c17063f
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+cced03bfd61a304243a34504618ecec86c17063f" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/Digital-Threads/Task-Journal already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+cced03bfd61a304243a34504618ecec86c17063f" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded ulid v1.2.1
[INFO] [stderr]   Downloaded rusqlite v0.31.0
[INFO] [stderr]   Downloaded hashlink v0.9.1
[INFO] [stderr]   Downloaded mockito v1.7.2
[INFO] [stderr]   Downloaded instability v0.3.12
[INFO] [stderr]   Downloaded indoc v2.0.7
[INFO] [stderr]   Downloaded globwalk v0.9.1
[INFO] [stderr]   Downloaded rmcp-macros v0.3.2
[INFO] [stderr]   Downloaded doc-comment v0.3.4
[INFO] [stderr]   Downloaded assert_cmd v2.2.0
[INFO] [stderr]   Downloaded assert_fs v1.1.3
[INFO] [stderr]   Downloaded globset v0.4.18
[INFO] [stderr]   Downloaded ignore v0.4.25
[INFO] [stderr]   Downloaded rmcp v0.3.1
[INFO] [stderr]   Downloaded tokio v1.52.1
[INFO] [stderr]   Downloaded libsqlite3-sys v0.28.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+cced03bfd61a304243a34504618ecec86c17063f" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 65074d6e0ca0b2dda125cc7738d8f1c8c79e95a61815f54f396eb1613dcb7815
[INFO] running `Command { std: "docker" "start" "-a" "65074d6e0ca0b2dda125cc7738d8f1c8c79e95a61815f54f396eb1613dcb7815", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "65074d6e0ca0b2dda125cc7738d8f1c8c79e95a61815f54f396eb1613dcb7815", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "65074d6e0ca0b2dda125cc7738d8f1c8c79e95a61815f54f396eb1613dcb7815", kill_on_drop: false }`
[INFO] [stdout] 65074d6e0ca0b2dda125cc7738d8f1c8c79e95a61815f54f396eb1613dcb7815
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+cced03bfd61a304243a34504618ecec86c17063f" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] d494842cbdc0cc2882548e7f296416100d0d70647ba6a2d84bb4357cd8390ca2
[INFO] running `Command { std: "docker" "start" "-a" "d494842cbdc0cc2882548e7f296416100d0d70647ba6a2d84bb4357cd8390ca2", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.106
[INFO] [stderr]    Compiling unicode-ident v1.0.24
[INFO] [stderr]    Compiling smallvec v1.15.1
[INFO] [stderr]    Compiling quote v1.0.45
[INFO] [stderr]    Compiling ahash v0.8.12
[INFO] [stderr]    Compiling rustversion v1.0.22
[INFO] [stderr]    Compiling serde_json v1.0.149
[INFO] [stderr]    Compiling getrandom v0.2.17
[INFO] [stderr]    Compiling rustix v1.1.4
[INFO] [stderr]    Compiling crc32fast v1.5.0
[INFO] [stderr]    Compiling pkg-config v0.3.33
[INFO] [stderr]    Compiling percent-encoding v2.3.2
[INFO] [stderr]    Compiling linux-raw-sys v0.12.1
[INFO] [stderr]    Compiling adler2 v2.0.1
[INFO] [stderr]    Compiling simd-adler32 v0.3.9
[INFO] [stderr]    Compiling paste v1.0.15
[INFO] [stderr]    Compiling fnv v1.0.7
[INFO] [stderr]    Compiling rustls v0.23.40
[INFO] [stderr]    Compiling futures-channel v0.3.32
[INFO] [stderr]    Compiling futures-io v0.3.32
[INFO] [stderr]    Compiling parking_lot_core v0.9.12
[INFO] [stderr]    Compiling ring v0.17.14
[INFO] [stderr]    Compiling form_urlencoded v1.2.2
[INFO] [stderr]    Compiling miniz_oxide v0.8.9
[INFO] [stderr]    Compiling instability v0.3.12
[INFO] [stderr]    Compiling fallible-iterator v0.3.0
[INFO] [stderr]    Compiling bytes v1.11.1
[INFO] [stderr]    Compiling fallible-streaming-iterator v0.1.9
[INFO] [stderr]    Compiling foldhash v0.1.5
[INFO] [stderr]    Compiling either v1.15.0
[INFO] [stderr]    Compiling hashbrown v0.14.5
[INFO] [stderr]    Compiling allocator-api2 v0.2.21
[INFO] [stderr]    Compiling parking_lot v0.12.5
[INFO] [stderr]    Compiling libsqlite3-sys v0.28.0
[INFO] [stderr]    Compiling itertools v0.13.0
[INFO] [stderr]    Compiling unicode-width v0.1.14
[INFO] [stderr]    Compiling static_assertions v1.1.0
[INFO] [stderr]    Compiling unicode-segmentation v1.13.2
[INFO] [stderr]    Compiling indoc v2.0.7
[INFO] [stderr]    Compiling fastrand v2.4.1
[INFO] [stderr]    Compiling castaway v0.2.4
[INFO] [stderr]    Compiling crossterm v0.28.1
[INFO] [stderr]    Compiling compact_str v0.8.1
[INFO] [stderr]    Compiling unicode-width v0.2.0
[INFO] [stderr]    Compiling syn v2.0.117
[INFO] [stderr]    Compiling flate2 v1.1.9
[INFO] [stderr]    Compiling hashbrown v0.15.5
[INFO] [stderr]    Compiling cassowary v0.3.0
[INFO] [stderr]    Compiling hashlink v0.9.1
[INFO] [stderr]    Compiling rustls-webpki v0.103.13
[INFO] [stderr]    Compiling lru v0.12.5
[INFO] [stderr]    Compiling fd-lock v4.0.4
[INFO] [stderr]    Compiling tempfile v3.27.0
[INFO] [stderr]    Compiling unicode-truncate v1.1.0
[INFO] [stderr]    Compiling synstructure v0.13.2
[INFO] [stderr]    Compiling serde_derive_internals v0.29.1
[INFO] [stderr]    Compiling darling_core v0.21.3
[INFO] [stderr]    Compiling darling_core v0.23.0
[INFO] [stderr]    Compiling zerofrom-derive v0.1.7
[INFO] [stderr]    Compiling yoke-derive v0.8.2
[INFO] [stderr]    Compiling zerovec-derive v0.11.3
[INFO] [stderr]    Compiling displaydoc v0.2.5
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling ref-cast-impl v1.0.25
[INFO] [stderr]    Compiling tracing-attributes v0.1.31
[INFO] [stderr]    Compiling futures-macro v0.3.32
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling tokio-macros v2.7.0
[INFO] [stderr]    Compiling ref-cast v1.0.25
[INFO] [stderr]    Compiling thiserror-impl v2.0.18
[INFO] [stderr]    Compiling clap_derive v4.6.1
[INFO] [stderr]    Compiling schemars_derive v1.2.1
[INFO] [stderr]    Compiling strum_macros v0.26.4
[INFO] [stderr]    Compiling tokio v1.52.1
[INFO] [stderr]    Compiling futures-util v0.3.32
[INFO] [stderr]    Compiling thiserror v1.0.69
[INFO] [stderr]    Compiling zerofrom v0.1.7
[INFO] [stderr]    Compiling tracing v0.1.44
[INFO] [stderr]    Compiling yoke v0.8.2
[INFO] [stderr]    Compiling tracing-subscriber v0.3.23
[INFO] [stderr]    Compiling zerovec v0.11.6
[INFO] [stderr]    Compiling zerotrie v0.2.4
[INFO] [stderr]    Compiling darling_macro v0.23.0
[INFO] [stderr]    Compiling thiserror v2.0.18
[INFO] [stderr]    Compiling darling_macro v0.21.3
[INFO] [stderr]    Compiling strum v0.26.3
[INFO] [stderr]    Compiling darling v0.21.3
[INFO] [stderr]    Compiling rmcp-macros v0.3.2
[INFO] [stderr]    Compiling darling v0.23.0
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling clap v4.6.1
[INFO] [stderr]    Compiling ratatui v0.29.0
[INFO] [stderr]    Compiling tinystr v0.8.3
[INFO] [stderr]    Compiling potential_utf v0.1.5
[INFO] [stderr]    Compiling icu_collections v2.2.0
[INFO] [stderr]    Compiling chrono v0.4.44
[INFO] [stderr]    Compiling ulid v1.2.1
[INFO] [stderr]    Compiling icu_locale_core v2.2.0
[INFO] [stderr]    Compiling icu_provider v2.2.0
[INFO] [stderr]    Compiling rusqlite v0.31.0
[INFO] [stderr]    Compiling icu_normalizer v2.2.0
[INFO] [stderr]    Compiling icu_properties v2.2.0
[INFO] [stderr]    Compiling futures-executor v0.3.32
[INFO] [stderr]    Compiling schemars v1.2.1
[INFO] [stderr]    Compiling futures v0.3.32
[INFO] [stderr]    Compiling tokio-util v0.7.18
[INFO] [stderr]    Compiling rmcp v0.3.1
[INFO] [stderr]    Compiling idna_adapter v1.2.2
[INFO] [stderr]    Compiling idna v1.1.0
[INFO] [stderr]    Compiling url v2.5.8
[INFO] [stderr]    Compiling ureq v2.12.1
[INFO] [stderr]    Compiling task-journal-core v0.13.0 (/opt/rustwide/workdir/crates/tj-core)
[INFO] [stderr]    Compiling task-journal-cli v0.13.0 (/opt/rustwide/workdir/crates/tj-cli)
[INFO] [stderr]    Compiling task-journal-mcp v0.13.0 (/opt/rustwide/workdir/crates/tj-mcp)
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 15s
[INFO] running `Command { std: "docker" "inspect" "d494842cbdc0cc2882548e7f296416100d0d70647ba6a2d84bb4357cd8390ca2", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "d494842cbdc0cc2882548e7f296416100d0d70647ba6a2d84bb4357cd8390ca2", kill_on_drop: false }`
[INFO] [stdout] d494842cbdc0cc2882548e7f296416100d0d70647ba6a2d84bb4357cd8390ca2
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+cced03bfd61a304243a34504618ecec86c17063f" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 037e8c17a743a7bcde0ce996478d0c4d9c9a20442b454688780121b4f9f5ad5b
[INFO] running `Command { std: "docker" "start" "-a" "037e8c17a743a7bcde0ce996478d0c4d9c9a20442b454688780121b4f9f5ad5b", kill_on_drop: false }`
[INFO] [stderr]    Compiling zerocopy v0.8.48
[INFO] [stderr]    Compiling aho-corasick v1.1.4
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling zerocopy-derive v0.8.48
[INFO] [stderr]    Compiling form_urlencoded v1.2.2
[INFO] [stderr]    Compiling slab v0.4.12
[INFO] [stderr]    Compiling tokio v1.52.1
[INFO] [stderr]    Compiling crossbeam-utils v0.8.21
[INFO] [stderr]    Compiling icu_normalizer v2.2.0
[INFO] [stderr]    Compiling same-file v1.0.6
[INFO] [stderr]    Compiling http v1.4.0
[INFO] [stderr]    Compiling darling_core v0.21.3
[INFO] [stderr]    Compiling rayon-core v1.13.0
[INFO] [stderr]    Compiling httpdate v1.0.3
[INFO] [stderr]    Compiling ciborium-io v0.2.2
[INFO] [stderr]    Compiling plotters-backend v0.3.7
[INFO] [stderr]    Compiling itertools v0.10.5
[INFO] [stderr]    Compiling walkdir v2.5.0
[INFO] [stderr]    Compiling cast v0.3.0
[INFO] [stderr]    Compiling predicates-core v1.0.10
[INFO] [stderr]    Compiling futures-util v0.3.32
[INFO] [stderr]    Compiling serde_urlencoded v0.7.1
[INFO] [stderr]    Compiling tinytemplate v1.2.1
[INFO] [stderr]    Compiling assert-json-diff v2.0.2
[INFO] [stderr]    Compiling is-terminal v0.4.17
[INFO] [stderr]    Compiling plotters-svg v0.3.7
[INFO] [stderr]    Compiling termtree v0.5.1
[INFO] [stderr]    Compiling normalize-line-endings v0.3.0
[INFO] [stderr]    Compiling anes v0.1.6
[INFO] [stderr]    Compiling oorandom v11.1.5
[INFO] [stderr]    Compiling doc-comment v0.3.4
[INFO] [stderr]    Compiling similar v2.7.0
[INFO] [stderr]    Compiling colored v3.1.1
[INFO] [stderr]    Compiling idna_adapter v1.2.2
[INFO] [stderr]    Compiling difflib v0.4.0
[INFO] [stderr]    Compiling idna v1.1.0
[INFO] [stderr]    Compiling crossbeam-epoch v0.9.18
[INFO] [stderr]    Compiling chrono v0.4.44
[INFO] [stderr]    Compiling float-cmp v0.10.0
[INFO] [stderr]    Compiling plotters v0.3.7
[INFO] [stderr]    Compiling predicates-tree v1.0.13
[INFO] [stderr]    Compiling assert_cmd v2.2.0
[INFO] [stderr]    Compiling http-body v1.0.1
[INFO] [stderr]    Compiling crossbeam-deque v0.8.6
[INFO] [stderr]    Compiling url v2.5.8
[INFO] [stderr]    Compiling http-body-util v0.1.3
[INFO] [stderr]    Compiling regex-automata v0.4.14
[INFO] [stderr]    Compiling criterion-plot v0.5.0
[INFO] [stderr]    Compiling ratatui v0.29.0
[INFO] [stderr]    Compiling rayon v1.12.0
[INFO] [stderr]    Compiling wait-timeout v0.2.1
[INFO] [stderr]    Compiling ureq v2.12.1
[INFO] [stderr]    Compiling schemars v1.2.1
[INFO] [stderr]    Compiling darling_macro v0.21.3
[INFO] [stderr]    Compiling darling v0.21.3
[INFO] [stderr]    Compiling rmcp-macros v0.3.2
[INFO] [stderr]    Compiling futures-executor v0.3.32
[INFO] [stderr]    Compiling futures v0.3.32
[INFO] [stderr]    Compiling regex v1.12.3
[INFO] [stderr]    Compiling matchers v0.2.0
[INFO] [stderr]    Compiling bstr v1.12.1
[INFO] [stderr]    Compiling tracing-subscriber v0.3.23
[INFO] [stderr]    Compiling predicates v3.1.4
[INFO] [stderr]    Compiling globset v0.4.18
[INFO] [stderr]    Compiling tokio-util v0.7.18
[INFO] [stderr]    Compiling tokio-stream v0.1.18
[INFO] [stderr]    Compiling ignore v0.4.25
[INFO] [stderr]    Compiling h2 v0.4.13
[INFO] [stderr]    Compiling rmcp v0.3.1
[INFO] [stderr]    Compiling ppv-lite86 v0.2.21
[INFO] [stderr]    Compiling ahash v0.8.12
[INFO] [stderr]    Compiling half v2.7.1
[INFO] [stderr]    Compiling hashbrown v0.14.5
[INFO] [stderr]    Compiling globwalk v0.9.1
[INFO] [stderr]    Compiling ciborium-ll v0.2.2
[INFO] [stderr]    Compiling assert_fs v1.1.3
[INFO] [stderr]    Compiling rand_chacha v0.9.0
[INFO] [stderr]    Compiling ciborium v0.2.2
[INFO] [stderr]    Compiling rand v0.9.4
[INFO] [stderr]    Compiling hashlink v0.9.1
[INFO] [stderr]    Compiling criterion v0.5.1
[INFO] [stderr]    Compiling ulid v1.2.1
[INFO] [stderr]    Compiling rusqlite v0.31.0
[INFO] [stderr]    Compiling task-journal-core v0.13.0 (/opt/rustwide/workdir/crates/tj-core)
[INFO] [stderr]    Compiling hyper v1.9.0
[INFO] [stderr]    Compiling hyper-util v0.1.20
[INFO] [stderr]    Compiling mockito v1.7.2
[INFO] [stderr]    Compiling task-journal-cli v0.13.0 (/opt/rustwide/workdir/crates/tj-cli)
[INFO] [stderr]    Compiling task-journal-mcp v0.13.0 (/opt/rustwide/workdir/crates/tj-mcp)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 1m 20s
[INFO] running `Command { std: "docker" "inspect" "037e8c17a743a7bcde0ce996478d0c4d9c9a20442b454688780121b4f9f5ad5b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "037e8c17a743a7bcde0ce996478d0c4d9c9a20442b454688780121b4f9f5ad5b", kill_on_drop: false }`
[INFO] [stdout] 037e8c17a743a7bcde0ce996478d0c4d9c9a20442b454688780121b4f9f5ad5b
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+cced03bfd61a304243a34504618ecec86c17063f" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 31f91d58f1dddf6059632ecc98096ce433c67915dab525625794f0868e7b9db5
[INFO] running `Command { std: "docker" "start" "-a" "31f91d58f1dddf6059632ecc98096ce433c67915dab525625794f0868e7b9db5", kill_on_drop: false }`
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.59s
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/task_journal-04a7ec8c77c8ab13)
[INFO] [stdout] 
[INFO] [stdout] running 45 tests
[INFO] [stdout] test inline_tests::is_rewind_prompt_case_insensitive ... ok
[INFO] [stdout] test inline_tests::is_rewind_prompt_simple ... ok
[INFO] [stdout] test tui::chat_view::tests::format_ts_empty_string ... ok
[INFO] [stdout] test inline_tests::task_matches_by_session_id_or_time_window ... ok
[INFO] [stdout] test tui::chat_view::tests::format_ts_exactly_19_chars ... ok
[INFO] [stdout] test tui::chat_view::tests::format_ts_short_string ... ok
[INFO] [stdout] test tui::chat_view::tests::format_ts_valid_rfc3339 ... ok
[INFO] [stdout] test tui::chat_view::tests::format_ts_valid_rfc3339_with_millis ... ok
[INFO] [stdout] test tui::chat_view::tests::format_ts_valid_rfc3339_with_offset ... ok
[INFO] [stdout] test tui::chat_view::tests::strip_xml_tags_command_message ... ok
[INFO] [stdout] test tui::chat_view::tests::strip_xml_tags_mixed_content ... ok
[INFO] [stdout] test tui::chat_view::tests::strip_xml_tags_nested ... ok
[INFO] [stdout] test tui::chat_view::tests::strip_xml_tags_self_closing ... ok
[INFO] [stdout] test inline_tests::persist_pending_v2_includes_session_id_when_present ... ok
[INFO] [stdout] test inline_tests::persist_pending_v2_omits_session_id_when_none ... ok
[INFO] [stdout] test inline_tests::is_rewind_prompt_rejects_non_match ... ok
[INFO] [stdout] test inline_tests::flatten_transcript_tags_roles_in_order ... ok
[INFO] [stdout] test tui::chat_view::tests::strip_xml_tags_simple ... ok
[INFO] [stdout] test tui::chat_view::tests::strip_xml_tags_only_tags_empty_result ... ok
[INFO] [stdout] test tui::chat_view::tests::truncate_empty_string ... ok
[INFO] [stdout] test tui::chat_view::tests::truncate_exact_length ... ok
[INFO] [stdout] test tui::chat_view::tests::truncate_multibyte_utf8_cyrillic ... ok
[INFO] [stdout] test tui::chat_view::tests::truncate_short_text ... ok
[INFO] [stdout] test tui::chat_view::tests::strip_xml_tags_no_tags_passthrough ... ok
[INFO] [stdout] test tui::chat_view::tests::word_wrap_empty_text ... ok
[INFO] [stdout] test tui::chat_view::tests::truncate_multibyte_utf8_emoji ... ok
[INFO] [stdout] test tui::chat_view::tests::word_wrap_one_char_over ... ok
[INFO] [stdout] test tui::chat_view::tests::truncate_single_ascii_char ... ok
[INFO] [stdout] test tui::chat_view::tests::word_wrap_exact_fit ... ok
[INFO] [stdout] test tui::chat_view::tests::word_wrap_single_word_longer_than_width ... ok
[INFO] [stdout] test tui::chat_view::tests::word_wrap_only_whitespace ... ok
[INFO] [stdout] test tui::chat_view::tests::word_wrap_zero_width ... ok
[INFO] [stdout] test tui::chat_view::tests::word_wrap_many_short_words ... ok
[INFO] [stdout] test tui::chat_view::tests::format_ts_invalid_but_long_enough ... ok
[INFO] [stdout] test tui::chat_view::tests::truncate_cuts_with_ellipsis ... ok
[INFO] [stdout] test tui::session_list::tests::truncate_ascii_over_limit_appends_ellipsis ... ok
[INFO] [stdout] test tui::session_list::tests::truncate_ascii_under_limit_returns_input_as_is ... ok
[INFO] [stdout] test tui::session_list::tests::truncate_cyrillic_does_not_panic_at_char_boundary ... ok
[INFO] [stdout] test tui::session_list::tests::truncate_emoji_counts_by_chars_not_bytes ... ok
[INFO] [stdout] test tui::session_list::tests::truncate_exact_length_no_ellipsis ... ok
[INFO] [stdout] test tui::chat_view::tests::word_wrap_normal_wrapping ... ok
[INFO] [stdout] test tui::chat_view::tests::word_wrap_multiple_spaces_collapsed ... ok
[INFO] [stdout] test inline_tests::topic_is_fts_safe_basic ... ok
[INFO] [stdout] test inline_tests::recent_task_contexts_gathers_constraints ... ok
[INFO] [stdout] test inline_tests::recent_task_contexts_bounds_constraints_to_n ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 45 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.20s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/cli.rs (/opt/rustwide/target/debug/deps/cli-1903e4ac8b9ea064)
[INFO] [stdout] 
[INFO] [stdout] running 101 tests
[INFO] [stdout] test classify_worker_respects_existing_lock ... ok
[INFO] [stdout] test create_writes_open_event_to_jsonl ... ok
[INFO] [stdout] test doctor_exits_zero_on_fresh_install ... ok
[INFO] [stdout] test close_rejects_invalid_outcome_tag ... ok
[INFO] [stdout] test create_with_missing_parent_is_rejected ... ok
[INFO] [stdout] test doctor_json_output_is_parseable_and_lists_paths ... ok
[INFO] [stdout] test create_back_to_back_yields_distinct_task_ids ... ok
[INFO] [stdout] test create_with_parent_sets_parent_id ... ok
[INFO] [stdout] test e2e_hook_simulation_classifies_and_packs_event ... ok
[INFO] [stdout] test close_unknown_task_id_returns_error ... ok
[INFO] [stdout] test close_with_outcome_renders_outcome_block ... ok
[INFO] [stdout] test close_command_marks_task_closed_in_pack ... ok
[INFO] [stdout] test event_correct_links_to_corrected_event ... ok
[INFO] [stdout] test events_list_shows_recent_events ... ok
[INFO] [stdout] test export_html_emits_self_contained_document ... ok
[INFO] [stdout] test asyncrewake_overflow_exits_two_with_drain_hint ... ok
[INFO] [stdout] test classify_worker_handles_classifier_failure_cleanly ... ok
[INFO] [stdout] test event_command_appends_decision_visible_in_pack ... ok
[INFO] [stdout] test export_memory_missing_task_exits_1 ... ok
[INFO] [stdout] test e2e_create_event_close_pack_search ... ok
[INFO] [stdout] test close_warns_on_completeness_gap ... ok
[INFO] [stdout] test export_pr_omits_optional_sections_when_no_data ... ok
[INFO] [stdout] test file_changed_hook_with_no_open_task_is_no_op ... ok
[INFO] [stdout] test create_with_goal_renders_in_pack ... ok
[INFO] [stdout] test asyncrewake_below_threshold_exits_zero ... ok
[INFO] [stdout] test help_lists_subcommands ... ok
[INFO] [stdout] test ingest_hook_help_hides_mock_flags ... ok
[INFO] [stdout] test create_without_goal_renders_not_set_placeholder ... ok
[INFO] [stdout] test export_memory_dry_run_prints_path_and_content_no_write ... ok
[INFO] [stdout] test export_memory_writes_one_idempotent_file ... ok
[INFO] [stdout] test ingest_hook_returns_fast_in_async_mode ... ok
[INFO] [stdout] test ingest_hook_drains_pending_queue_via_mock ... ok
[INFO] [stdout] test ingest_hook_session_start_with_no_open_tasks_emits_no_context ... ok
[INFO] [stdout] test export_pr_renders_summary_changes_rejections_verification_affected ... ok
[INFO] [stdout] test ingest_hook_writes_telemetry_record ... ok
[INFO] [stdout] test export_pr_unknown_task_id_exits_one_with_stderr_message ... ok
[INFO] [stdout] test install_hooks_is_idempotent_and_uninstall_works ... ok
[INFO] [stdout] test install_hooks_command_uses_no_fail_pattern ... ok
[INFO] [stdout] test export_memory_all_closed_skips_open ... ok
[INFO] [stdout] test ingest_hook_auto_open_disabled_via_env ... ok
[INFO] [stdout] test install_hooks_uninstall_preserves_third_party_hook_entries ... ok
[INFO] [stdout] test install_hooks_wires_precompact_event ... ok
[INFO] [stdout] test asyncrewake_overflow_without_env_does_not_exit_two ... ok
[INFO] [stdout] test install_hooks_uninstall_removes_legacy_classifier_env ... ok
[INFO] [stdout] test auto_open_links_to_prior_task_referencing_same_issue ... ok
[INFO] [stdout] test external_add_appends_references ... ok
[INFO] [stdout] test install_hooks_writes_command_without_bogus_env_var_interpolation ... ok
[INFO] [stdout] test file_changed_hook_appends_evidence_to_active_task ... ok
[INFO] [stdout] test install_hooks_writes_to_settings_json ... ok
[INFO] [stdout] test goal_command_updates_existing_task ... ok
[INFO] [stdout] test pending_list_shows_queued_entries ... ok
[INFO] [stdout] test pending_retry_marks_dead_after_max_attempts ... ok
[INFO] [stdout] test ingest_hook_short_circuits_when_in_classifier_env_set ... ok
[INFO] [stdout] test ingest_hook_session_start_emits_resume_pack_json ... ok
[INFO] [stdout] test ingest_hook_with_mock_writes_classified_event ... ok
[INFO] [stdout] test migrate_project_refuses_overwrite_without_force ... ok
[INFO] [stdout] test ingest_hook_reads_user_prompt_submit_payload_from_stdin ... ok
[INFO] [stdout] test ingest_hook_auto_opens_task_when_no_open_tasks ... ok
[INFO] [stdout] test ingest_hook_reads_post_tool_use_payload_from_stdin ... ok
[INFO] [stdout] test export_sqlite_round_trips_through_pack ... ok
[INFO] [stdout] test precompact_hook_with_no_open_task_writes_nothing ... ok
[INFO] [stdout] test pending_retry_drains_with_mock_classifier ... ok
[INFO] [stdout] test migrate_project_round_trips_data_to_new_path ... ok
[INFO] [stdout] test list_tree_indents_children_under_parents ... ok
[INFO] [stdout] test post_tool_use_mcp_no_recall_passes_through ... ok
[INFO] [stdout] test pack_full_keeps_newest_decision_when_budget_tight ... ok
[INFO] [stdout] test pack_renders_artifacts_block_from_event_text ... ok
[INFO] [stdout] test precompact_ingests_transcript_tail_into_pending_v2 ... ok
[INFO] [stdout] test post_tool_use_skips_recall_for_mcp_tools ... ok
[INFO] [stdout] test post_tool_use_mcp_prepends_recall_banner ... ok
[INFO] [stdout] test precompact_hook_appends_marker_decision_to_open_task ... ok
[INFO] [stdout] test post_tool_use_emits_recall_additional_context ... ok
[INFO] [stdout] test pack_command_prints_markdown_for_existing_task ... ok
[INFO] [stdout] test precompact_skips_transcript_entries_older_than_last_event ... ok
[INFO] [stdout] test precompact_dedupes_marker_within_60s_window ... ok
[INFO] [stdout] test post_tool_use_no_recall_when_no_match ... ok
[INFO] [stdout] test rebuild_state_creates_sqlite_with_one_task ... ok
[INFO] [stdout] test push_recall_mcp_does_not_drop_capture ... ok
[INFO] [stdout] test search_command_finds_task_by_event_text ... ok
[INFO] [stdout] test post_tool_use_non_mcp_tool_emits_no_mcp_output ... ok
[INFO] [stdout] test session_start_emits_watch_paths_for_existing_marker_files ... ok
[INFO] [stdout] test stats_command_shows_classifier_counts ... ok
[INFO] [stdout] test session_start_initial_user_message_disabled_via_env ... ok
[INFO] [stdout] test statusline_empty_when_no_project_state ... ok
[INFO] [stdout] test search_does_not_crash_on_hyphenated_identifier ... ok
[INFO] [stdout] test session_start_emits_no_initial_user_message_for_hollow_task ... ok
[INFO] [stdout] test search_falls_back_to_like_when_fts_token_split_misses ... ok
[INFO] [stdout] test reclassify_backfills_artifacts_for_existing_events ... ok
[INFO] [stdout] test search_does_not_crash_on_slash_or_colon ... ok
[INFO] [stdout] test session_start_compact_prepends_active_task_reminder ... ok
[INFO] [stdout] test rewind_prompt_appends_correction_event ... ok
[INFO] [stdout] test search_filters_by_event_type ... ok
[INFO] [stdout] test tj_push_recall_env_disables ... ok
[INFO] [stdout] test statusline_renders_open_count_and_task_id ... ok
[INFO] [stdout] test search_all_projects_finds_match_in_other_project_hash ... ok
[INFO] [stdout] test reopen_command_flips_status_back_to_open ... ok
[INFO] [stdout] test stop_without_transcript_path_is_silent_noop ... ok
[INFO] [stdout] test stop_ingests_transcript_tail_into_pending_v2 ... ok
[INFO] [stdout] test rejected_command_finds_rejection_events_by_topic ... ok
[INFO] [stdout] test session_start_omits_watch_paths_when_disabled_via_env ... ok
[INFO] [stdout] test session_start_startup_has_no_reminder ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 101 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 1.98s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/tj_core-7b8b1dbf89a65802)
[INFO] [stdout] 
[INFO] [stdout] running 232 tests
[INFO] [stdout] test classifier::agent_sdk::tests::pins_the_configured_model ... ok
[INFO] [stdout] test artifacts::tests::merge_dedupes ... ok
[INFO] [stdout] test classifier::agent_sdk::tests::tolerates_code_fence_wrapped_verdict ... ok
[INFO] [stdout] test classifier::agent_sdk::tests::parses_canned_verdict_into_classify_output ... ok
[INFO] [stdout] test classifier::heuristic::tests::matches_evidence_for_test_results ... ok
[INFO] [stdout] test classifier::heuristic::tests::matches_decision_keyword ... ok
[INFO] [stdout] test classifier::heuristic::tests::matches_finding_with_file_reference ... ok
[INFO] [stdout] test artifacts::tests::json_round_trip ... ok
[INFO] [stdout] test classifier::agent_sdk::tests::decide_status_at_the_0_85_threshold ... ok
[INFO] [stdout] test classifier::agent_sdk::tests::errors_when_claude_reports_is_error ... ok
[INFO] [stdout] test classifier::heuristic::tests::returns_none_for_neutral_chatter ... ok
[INFO] [stdout] test classifier::heuristic::tests::returns_none_for_short_text ... ok
[INFO] [stdout] test classifier::heuristic::tests::russian_decision_phrases_match ... ok
[INFO] [stdout] test classifier::heuristic::tests::suggested_text_is_truncated ... ok
[INFO] [stdout] test classifier::hybrid::tests::heuristic_hit_skips_http_even_when_available ... ok
[INFO] [stdout] test classifier::hybrid::tests::from_env_constructs_without_key ... ok
[INFO] [stdout] test classifier::mock::tests::mock_returns_canned_output ... ok
[INFO] [stdout] test classifier::hybrid::tests::uncertain_heuristic_without_api_key_bails ... ok
[INFO] [stdout] test classifier::prompt::tests::prompt_handles_empty_tasks ... ok
[INFO] [stdout] test classifier::prompt::tests::prompt_includes_text_and_recent_tasks ... ok
[INFO] [stdout] test classifier::prompt::tests::prompt_renders_constraints_block_when_present ... ok
[INFO] [stdout] test classifier::prompt::tests::prompt_unchanged_when_no_constraints ... ok
[INFO] [stdout] test classifier::hybrid::tests::uncertain_heuristic_prefers_agent_sdk_and_never_touches_http ... ok
[INFO] [stdout] test classifier::prompt::tests::prompt_contains_few_shot_examples ... ok
[INFO] [stdout] test classifier::http::tests::classifier_parses_anthropic_response ... ok
[INFO] [stdout] test classifier::prompt::tests::prompt_truncates_event_lines_to_keep_size_bounded ... ok
[INFO] [stdout] test artifacts::tests::extracts_commit_hash ... ok
[INFO] [stdout] test classifier::heuristic::tests::matches_rejection_before_decision_when_both_present ... ok
[INFO] [stdout] test classifier::tests::classify_input_serializes ... ok
[INFO] [stdout] test classifier::tests::decide_status_high_confidence_is_confirmed ... ok
[INFO] [stdout] test classifier::tests::tj_classifier_model_env_var_overrides_http_default ... ok
[INFO] [stdout] test artifacts::tests::extracts_dot_prefixed_dirs ... ok
[INFO] [stdout] test classifier::tests::decide_status_low_confidence_is_suggested ... ok
[INFO] [stdout] test classifier::tests::task_context_has_constraints_field ... ok
[INFO] [stdout] test completeness::tests::pending_count_zero_when_no_dir ... ok
[INFO] [stdout] test completeness::tests::render_section_lists_gaps ... ok
[INFO] [stdout] test artifacts::tests::extracts_github_pr_url ... ok
[INFO] [stdout] test artifacts::tests::extracts_branch_names ... ok
[INFO] [stdout] test completeness::tests::render_section_none_when_complete ... ok
[INFO] [stdout] test artifacts::tests::rejects_all_digit_commit_lookalikes ... ok
[INFO] [stdout] test artifacts::tests::extracts_file_paths ... ok
[INFO] [stdout] test artifacts::tests::does_not_capture_branch_from_prose ... ok
[INFO] [stdout] test artifacts::tests::empty_text_yields_empty_artifacts ... ok
[INFO] [stdout] test artifacts::tests::extracts_linked_issues ... ok
[INFO] [stdout] test classifier::telemetry::tests::append_and_read_back_roundtrip ... ok
[INFO] [stdout] test db::tests::fresh_db_runs_all_migrations ... ok
[INFO] [stdout] test completeness::tests::unknown_task_is_empty_report ... ok
[INFO] [stdout] test db::tests::children_of_and_parent_of_work ... ok
[INFO] [stdout] test completeness::tests::closed_no_outcome_fires ... ok
[INFO] [stdout] test completeness::tests::no_goal_fires_when_goal_absent ... ok
[INFO] [stdout] test db::tests::cycle_guard_rejects_self_and_ancestor ... ok
[INFO] [stdout] test db::tests::list_all_projects_returns_hashes_from_state_dir ... ok
[INFO] [stdout] test completeness::tests::pending_leak_fires_when_count_positive ... ok
[INFO] [stdout] test db::tests::apply_migrations_is_idempotent_across_reopens ... ok
[INFO] [stdout] test db::tests::count_open_children_counts_only_open ... ok
[INFO] [stdout] test db::tests::index_event_decision_without_alternatives_leaves_column_null ... ok
[INFO] [stdout] test db::tests::index_event_projects_decision_alternatives_into_column ... ok
[INFO] [stdout] test db::tests::index_event_projects_decision_to_decisions_table ... ok
[INFO] [stdout] test completeness::tests::suggested_unconfirmed_counts ... ok
[INFO] [stdout] test completeness::tests::decision_without_evidence_fires_then_clears ... ok
[INFO] [stdout] test db::tests::index_event_is_idempotent_no_search_fts_duplicates ... ok
[INFO] [stdout] test classifier::http::tests::classifier_times_out_on_unresponsive_server ... ok
[INFO] [stdout] test dream::backend::tests::mock_backend_returns_canned_events ... ok
[INFO] [stdout] test dream::backfill::tests::disjoint_text_is_similarity_zero ... ok
[INFO] [stdout] test dream::backfill::tests::drops_near_duplicate_keeps_novel ... ok
[INFO] [stdout] test dream::backfill::tests::identical_text_is_similarity_one ... ok
[INFO] [stdout] test dream::backfill::tests::to_event_stamps_dream_provenance ... ok
[INFO] [stdout] test dream::http::tests::backend_parses_event_array ... ok
[INFO] [stdout] test dream::prompt::tests::prompt_includes_tasks_transcript_and_rules ... ok
[INFO] [stdout] test dream::prompt::tests::prompt_marks_task_with_no_events ... ok
[INFO] [stdout] test dream::scope::tests::filters_by_since_and_caps_by_limit ... ok
[INFO] [stdout] test dream::scope::tests::none_since_keeps_all_limit_caps ... ok
[INFO] [stdout] test db::tests::open_creates_all_tables ... ok
[INFO] [stdout] test db::tests::invalidate_cascade_clears_parent_pack ... ok
[INFO] [stdout] test db::tests::open_event_meta_parent_id_is_persisted ... ok
[INFO] [stdout] test event::tests::author_source_status_strength_serialize_snake_case ... ok
[INFO] [stdout] test event::tests::event_new_assigns_ulid_and_now ... ok
[INFO] [stdout] test event::tests::event_round_trip_all_fields ... ok
[INFO] [stdout] test event::tests::event_type_round_trip_all_variants ... ok
[INFO] [stdout] test event::tests::event_type_serializes_to_snake_case ... ok
[INFO] [stdout] test event::tests::source_dream_serializes_to_snake_case ... ok
[INFO] [stdout] test frontmatter::tests::render_has_frontmatter_block_with_type_project ... ok
[INFO] [stdout] test db::tests::migration_adds_parent_id_column_nullable ... ok
[INFO] [stdout] test frontmatter::tests::render_omits_empty_sections_and_includes_filled_ones ... ok
[INFO] [stdout] test frontmatter::tests::render_quotes_and_escapes_description ... ok
[INFO] [stdout] test frontmatter::tests::slugify_kebabs_and_trims ... ok
[INFO] [stdout] test fts::tests::colon_gets_phrase_quoted ... ok
[INFO] [stdout] test fts::tests::cyrillic_passes_through ... ok
[INFO] [stdout] test fts::tests::embedded_quote_is_doubled ... ok
[INFO] [stdout] test fts::tests::empty_query_stays_empty ... ok
[INFO] [stdout] test fts::tests::hyphenated_id_gets_phrase_quoted ... ok
[INFO] [stdout] test fts::tests::like_pattern_wraps_with_percent_signs ... ok
[INFO] [stdout] test fts::tests::multi_word_passes_through_for_default_and_search ... ok
[INFO] [stdout] test fts::tests::parens_get_phrase_quoted ... ok
[INFO] [stdout] test fts::tests::plain_word_passes_through ... ok
[INFO] [stdout] test fts::tests::slash_path_gets_phrase_quoted ... ok
[INFO] [stdout] test fts::tests::star_gets_phrase_quoted ... ok
[INFO] [stdout] test db::tests::open_is_idempotent ... ok
[INFO] [stdout] test db::tests::index_event_writes_index_and_fts ... ok
[INFO] [stdout] test db::tests::ingest_new_events_falls_back_to_full_rebuild_when_marker_vanishes ... ok
[INFO] [stdout] test db::tests::index_event_projects_evidence ... ok
[INFO] [stdout] test db::tests::rebuild_state_reads_jsonl_and_populates_db ... ok
[INFO] [stdout] test db::tests::upsert_task_from_open_event_inserts_row ... ok
[INFO] [stdout] test db::tests::rebuild_state_skips_malformed_jsonl_lines ... ok
[INFO] [stdout] test pack::tests::pack_mode_round_trips_via_serde ... ok
[INFO] [stdout] test db::tests::ingest_new_events_picks_up_only_new_lines ... ok
[INFO] [stdout] test dream::state::tests::watermark_round_trips_and_upserts ... ok
[INFO] [stdout] test db::tests::task_exists_returns_true_for_known_id_false_otherwise ... ok
[INFO] [stdout] test dream::tests::dry_run_writes_nothing_and_skips_backend ... ok
[INFO] [stdout] test db::tests::supersede_event_marks_decision_superseded ... ok
[INFO] [stdout] test dream::tests::run_dream_appends_novel_events_and_indexes ... ok
[INFO] [stdout] test pack::tests::assemble_header_only_compact ... ok
[INFO] [stdout] test pack::tests::cache_is_invalidated_on_new_event ... ok
[INFO] [stdout] test pack::tests::assemble_includes_lifecycle_history ... ok
[INFO] [stdout] test pack::tests::truncate_to_budget_handles_multibyte_boundary ... ok
[INFO] [stdout] test pack::tests::truncate_to_budget_noop_under_budget ... ok
[INFO] [stdout] test paths::tests::data_dir_returns_a_path_containing_task_journal ... ok
[INFO] [stdout] test paths::tests::env_overrides_take_precedence ... ok
[INFO] [stdout] test paths::tests::project_dir_appends_subdir ... ok
[INFO] [stdout] test project_hash::tests::different_paths_yield_different_hashes ... ok
[INFO] [stdout] test project_hash::tests::dot_git_file_in_worktree_root_is_a_boundary ... ok
[INFO] [stdout] test project_hash::tests::dot_task_journal_marker_overrides_git_boundary ... ok
[INFO] [stdout] test project_hash::tests::same_path_yields_same_hash ... ok
[INFO] [stdout] test project_hash::tests::subdir_under_git_root_hashes_to_root ... ok
[INFO] [stdout] test pack::tests::compact_mode_omits_optional_sections ... ok
[INFO] [stdout] test pack::tests::pack_cache_returns_cached_text_on_second_call ... ok
[INFO] [stdout] test pack::tests::pack_no_completeness_section_when_complete ... ok
[INFO] [stdout] test pack::tests::pack_cache_hits_after_incremental_ingest_with_no_new_events ... ok
[INFO] [stdout] test pack::tests::pack_renders_active_decisions ... ok
[INFO] [stdout] test pack::tests::corrected_events_appear_with_correction_event_type ... ok
[INFO] [stdout] test pack::tests::pack_renders_evidence_section ... ok
[INFO] [stdout] test pack::tests::pack_renders_decision_alternatives ... ok
[INFO] [stdout] test db::tests::rebuild_state_and_ingest_new_events_produce_same_state ... ok
[INFO] [stdout] test schema_version_tests::pack_assembler_does_not_inline_schema_version_literal ... ok
[INFO] [stdout] test schema_version_tests::schema_version_matches_event_default ... ok
[INFO] [stdout] test session::discovery::tests::claude_config_dir_handles_env_var ... ok
[INFO] [stdout] test session::discovery::tests::decode_project_path_returns_same_string ... ok
[INFO] [stdout] test session::discovery::tests::encode_path_replaces_separators ... ok
[INFO] [stdout] test session::discovery::tests::encode_preserves_dashes ... ok
[INFO] [stdout] test session::discovery::tests::encode_wsl_path ... ok
[INFO] [stdout] test session::discovery::tests::find_project_dir_returns_none_when_no_match ... ok
[INFO] [stdout] test session::discovery::tests::find_project_dir_returns_none_when_projects_dir_missing ... ok
[INFO] [stdout] test session::discovery::tests::find_project_dir_with_env_override ... ok
[INFO] [stdout] test session::discovery::tests::list_all_projects_with_temp_dir ... ok
[INFO] [stdout] test session::discovery::tests::list_sessions_empty_directory ... ok
[INFO] [stdout] test session::discovery::tests::list_sessions_nonexistent_directory ... ok
[INFO] [stdout] test session::discovery::tests::list_sessions_returns_jsonl_files_skipping_agent_files ... ok
[INFO] [stdout] test pack::tests::pack_shows_completeness_section_when_gaps ... ok
[INFO] [stdout] test pack::tests::pack_renders_rejected_options ... ok
[INFO] [stdout] test session::extractor::tests::derive_title_fallback_to_session_id ... ok
[INFO] [stdout] test session::extractor::tests::derive_title_from_summary ... ok
[INFO] [stdout] test session::extractor::tests::derive_title_from_user_text ... ok
[INFO] [stdout] test session::extractor::tests::derive_title_skips_short_user_text ... ok
[INFO] [stdout] test session::extractor::tests::derive_title_strips_xml_from_summary ... ok
[INFO] [stdout] test session::extractor::tests::extract_from_session_detects_git_commit ... ok
[INFO] [stdout] test session::extractor::tests::extract_from_session_detects_test_commands ... ok
[INFO] [stdout] test session::extractor::tests::extract_from_session_produces_open_and_close_events ... ok
[INFO] [stdout] test session::extractor::tests::extract_from_session_skips_sessions_with_fewer_than_2_user_messages ... ok
[INFO] [stdout] test session::extractor::tests::extract_from_session_skips_zero_user_messages ... ok
[INFO] [stdout] test session::extractor::tests::strip_xml_tags_no_tags ... ok
[INFO] [stdout] test session::extractor::tests::extract_from_session_tracks_file_modifications ... ok
[INFO] [stdout] test session::extractor::tests::strip_xml_tags_only_tags ... ok
[INFO] [stdout] test session::extractor::tests::strip_xml_tags_preserves_angle_bracket_text_between_tags ... ok
[INFO] [stdout] test session::extractor::tests::strip_xml_tags_removes_nested_tags ... ok
[INFO] [stdout] test session::extractor::tests::strip_xml_tags_with_attributes ... ok
[INFO] [stdout] test session::extractor::tests::strip_xml_tags_removes_simple_tags ... ok
[INFO] [stdout] test session::extractor::tests::test_classify_constraint ... ok
[INFO] [stdout] test session::extractor::tests::test_classify_decision ... ok
[INFO] [stdout] test session::extractor::tests::test_classify_no_match_returns_none ... ok
[INFO] [stdout] test session::extractor::tests::test_classify_rejection ... ok
[INFO] [stdout] test session::extractor::tests::test_classify_short_text_skipped ... ok
[INFO] [stdout] test session::extractor::tests::test_is_test_command ... ok
[INFO] [stdout] test session::extractor::tests::test_is_test_command_additional ... ok
[INFO] [stdout] test session::extractor::tests::test_shorten_path_two_components ... ok
[INFO] [stdout] test session::extractor::tests::test_shorten_path_windows_separators ... ok
[INFO] [stdout] test session::extractor::tests::test_truncate ... ok
[INFO] [stdout] test session::extractor::tests::test_truncate_exact_boundary ... ok
[INFO] [stdout] test session::extractor::tests::test_truncate_multibyte_utf8 ... ok
[INFO] [stdout] test session::parser::tests::extract_assistant_texts_empty_content ... ok
[INFO] [stdout] test session::parser::tests::extract_assistant_texts_filters_out_thinking_and_tool_result ... ok
[INFO] [stdout] test session::parser::tests::extract_assistant_texts_no_message ... ok
[INFO] [stdout] test session::parser::tests::extract_tool_uses_no_message ... ok
[INFO] [stdout] test session::parser::tests::extract_tool_uses_only_returns_tool_use_blocks ... ok
[INFO] [stdout] test session::parser::tests::extract_tool_uses_preserves_input ... ok
[INFO] [stdout] test session::parser::tests::extract_user_text_array_no_text_blocks ... ok
[INFO] [stdout] test session::parser::tests::extract_user_text_empty_array ... ok
[INFO] [stdout] test session::parser::tests::extract_user_text_multiple_text_blocks_joined ... ok
[INFO] [stdout] test session::parser::tests::extract_user_text_null_content ... ok
[INFO] [stdout] test session::parser::tests::first_user_text_no_message ... ok
[INFO] [stdout] test session::parser::tests::first_user_text_returns_none_when_no_users ... ok
[INFO] [stdout] test session::parser::tests::first_user_text_skips_empty_messages ... ok
[INFO] [stdout] test session::parser::tests::first_user_text_with_xml_tagged_content ... ok
[INFO] [stdout] test session::parser::tests::message_counts ... ok
[INFO] [stdout] test session::parser::tests::message_counts_empty_session ... ok
[INFO] [stdout] test session::parser::tests::parse_assistant_with_tool_use ... ok
[INFO] [stdout] test session::extractor::tests::test_shorten_path ... ok
[INFO] [stdout] test session::parser::tests::parse_session_nonexistent_file ... ok
[INFO] [stdout] test session::parser::tests::parse_session_empty_file ... ok
[INFO] [stdout] test session::parser::tests::parse_session_session_id_from_filename ... ok
[INFO] [stdout] test session::parser::tests::parse_session_skips_empty_and_malformed_lines ... ok
[INFO] [stdout] test session::parser::tests::parse_user_array_content ... ok
[INFO] [stdout] test session::parser::tests::parse_user_string_content ... ok
[INFO] [stdout] test session::parser::tests::summary_returns_first_summary_text ... ok
[INFO] [stdout] test session::parser::tests::summary_returns_none_when_no_summary_entry ... ok
[INFO] [stdout] test session_id::tests::live_falls_back_to_env ... ok
[INFO] [stdout] test session_id::tests::live_none_when_no_source ... ok
[INFO] [stdout] test session_id::tests::live_payload_wins_over_env ... ok
[INFO] [stdout] test session_id::tests::payload_empty_or_missing_is_none ... ok
[INFO] [stdout] test session::parser::tests::parse_session_with_valid_jsonl ... ok
[INFO] [stdout] test session_id::tests::payload_session_id_extracted ... ok
[INFO] [stdout] test session_id::tests::stamp_adds_to_object_meta ... ok
[INFO] [stdout] test session_id::tests::stamp_none_is_noop ... ok
[INFO] [stdout] test session_id::tests::stamp_on_non_object_is_noop ... ok
[INFO] [stdout] test storage::tests::append_three_events_yields_three_lines ... ok
[INFO] [stdout] test session::discovery::tests::list_sessions_sorted_by_mtime_newest_first ... ok
[INFO] [stdout] test storage::tests::reopen_appends_not_truncates ... ok
[INFO] [stdout] test task_id_tests::new_task_id_has_expected_shape ... ok
[INFO] [stdout] test pack::tests::suggested_events_get_question_mark_marker_in_pack ... ok
[INFO] [stdout] test recall::tests::empty_query_returns_empty ... ok
[INFO] [stdout] test pack::tests::parent_pack_contains_subtasks_section ... ok
[INFO] [stdout] test recall::tests::below_threshold_returns_empty ... ok
[INFO] [stdout] test pack::tests::pack_renders_recent_events_full_mode ... ok
[INFO] [stdout] test reminder::tests::reminder_none_when_no_open_task ... ok
[INFO] [stdout] test recall::tests::ignores_suggested_and_wrong_type ... ok
[INFO] [stdout] test task_id_tests::new_task_id_unique_over_ten_thousand ... ok
[INFO] [stdout] test storage::tests::concurrent_appends_do_not_interleave_bytes ... ok
[INFO] [stdout] test recall::tests::caps_at_max_hits ... ok
[INFO] [stdout] test recall::tests::returns_matching_confirmed_rejection ... ok
[INFO] [stdout] test reminder::tests::reminder_none_when_task_closed ... ok
[INFO] [stdout] test recall::tests::rejection_wins_tie_over_decision ... ok
[INFO] [stdout] test reminder::tests::reminder_includes_title_goal_and_up_to_3_constraints ... ok
[INFO] [stderr]      Running tests/golden_pack.rs (/opt/rustwide/target/debug/deps/golden_pack-c66c16e5717744b7)
[INFO] [stdout] test pack::tests::full_mode_truncates_when_exceeding_budget ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 232 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 2.38s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 2 tests
[INFO] [stdout] test fixture_a_compact_pack_for_simple_task ... ok
[INFO] [stdout] test fixture_b_full_pack_with_supersede_and_correction ... ok
[INFO] [stderr]      Running tests/round_trip.rs (/opt/rustwide/target/debug/deps/round_trip-4059b43e9c257c4e)
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.27s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 1 test
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/task_journal_mcp-e10ad6db42753c58)
[INFO] [stdout] test full_round_trip_writes_events_and_rebuilds_state ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.19s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 16 tests
[INFO] [stdout] test tests::cli_parses_project_dir_argument ... ok
[INFO] [stdout] test tests::shutdown_signal_does_not_fire_spuriously ... ok
[INFO] [stdout] test tests::traced_tool_transparently_returns_inner_result ... ok
[INFO] [stdout] test tests::into_mcp_error_carries_full_anyhow_chain ... ok
[INFO] [stdout] test tests::no_response_serializes_a_stub_field ... ok
[INFO] [stdout] test tests::resolve_project_paths_uses_provided_dir_for_hash ... ok
[INFO] [stdout] test tests::new_correlation_id_is_unique_across_thousand_calls ... ok
[INFO] [stdout] test tests::cached_open_returns_same_arc_for_same_path ... ok
[INFO] [stdout] test tests::run_blocking_executes_two_tasks_concurrently ... ok
[INFO] [stdout] test tests::cached_open_returns_distinct_arcs_for_distinct_paths ... ok
[INFO] [stdout] test tests::task_close_notes_open_subtasks ... ok
[INFO] [stdout] test tests::task_close_reports_completeness_gaps ... ok
[INFO] [stdout] test tests::task_create_with_parent_stamps_meta ... ok
[INFO] [stdout] test tests::event_add_decision_stamps_alternatives_meta ... ok
[INFO] [stdout] test tests::event_add_rejects_alternatives_on_non_decision ... ok
[INFO] [stdout] test tests::task_pack_returns_rpc_error_when_state_dir_is_unusable ... ok
[INFO] [stdout] 
[INFO] [stderr]      Running tests/rmcp_roundtrip.rs (/opt/rustwide/target/debug/deps/rmcp_roundtrip-51e3edbb85207359)
[INFO] [stdout] test result: ok. 16 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.51s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 2 tests
[INFO] [stdout] test dummy_client_handler_compiles_and_provides_default_info ... ok
[INFO] [stdout] test rmcp_call_tool_request_param_round_trips_via_serde ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/skill_doc.rs (/opt/rustwide/target/debug/deps/skill_doc-7303c855bc109b60)
[INFO] [stdout] 
[INFO] [stdout] running 3 tests
[INFO] [stdout] test skill_frames_self_tagging_as_primary ... ok
[INFO] [stdout] test skill_is_present_with_valid_frontmatter ... ok
[INFO] [stdout] test skill_documents_real_event_add_params_not_phantom_ones ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/smoke.rs (/opt/rustwide/target/debug/deps/smoke-eda8e5632e4df2e1)
[INFO] [stdout] 
[INFO] [stdout] running 1 test
[INFO] [stdout] test binary_exists_after_build ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests tj_core
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "31f91d58f1dddf6059632ecc98096ce433c67915dab525625794f0868e7b9db5", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "31f91d58f1dddf6059632ecc98096ce433c67915dab525625794f0868e7b9db5", kill_on_drop: false }`
[INFO] [stdout] 31f91d58f1dddf6059632ecc98096ce433c67915dab525625794f0868e7b9db5
